﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Runtime.Serialization;

namespace CMD.BAL.CAT
{
   [DataContractAttribute]
   public class TipoNegocio
   {
       [DataMemberAttribute(EmitDefaultValue = false)]
       public int idTipoNegocio;
       [DataMemberAttribute(EmitDefaultValue = false)]
       public string dscTipoNegocio;
       //[DataMemberAttribute]
       //public string denominacion;
       //[DataMemberAttribute]
       //public string groPreciosFrontera;
       //[DataMemberAttribute]
       //public string groPreciosInterior;
       //[DataMemberAttribute]
       //public string groPreciosDf;
       //[DataMemberAttribute]
       //public string groPreciosCedis;
       //[DataMemberAttribute]
       //public string codigoRamo;
       //[DataMemberAttribute]
       //public string jerarquiaTipoNegocioA;
       //[DataMemberAttribute]
       //public Boolean otrasCategorias;
       //[DataMemberAttribute]
       //public string groPreciosFronteraOc;
       //[DataMemberAttribute]
       //public string groPreciosFrontera1Oc;
       //[DataMemberAttribute]
       //public string groPreciosInteriorOc;
       //[DataMemberAttribute]
       //public string groPreciosInterior1Oc;
       public static DataTable GetData()
        {
            DataTable dt;
            //ejecutar store
            dt = CMD_WEB.DAL.SrvDB.ExecuteQuery("exec SP_CMD_CAT_SEL_TIPO_NEGOCIO");
            return dt;
        }
       public static List<TipoNegocio> GetDataTipoNegocio()
       {
           try
           {
               DataTable dt;
               dt = TipoNegocio.GetData();
               if (dt.Rows.Count == 0)
               {
                   return null;
               }
               else
               {
                   List<TipoNegocio> list = dt.AsEnumerable().Select(
                   row => new TipoNegocio
                   {
                       idTipoNegocio = row.Field<int?>("ID_TIPO_NEGOCIO").GetValueOrDefault(),
                       dscTipoNegocio = String.IsNullOrEmpty(row.Field<string>("DSC_TIPO_NEGOCIO"))
                       ? ""
                       : row.Field<string>("DSC_TIPO_NEGOCIO"),
                       //denominacion = String.IsNullOrEmpty(row.Field<string>(2))
                       //? ""
                       //: row.Field<string>(2),
                       //groPreciosFrontera = String.IsNullOrEmpty(row.Field<string>(3))
                       //? ""
                       //: row.Field<string>(3),
                       //groPreciosInterior = String.IsNullOrEmpty(row.Field<string>(4))
                       //? ""
                       //: row.Field<string>(4),
                       //groPreciosDf = String.IsNullOrEmpty(row.Field<string>(5))
                       //? ""
                       //: row.Field<string>(5),
                       //groPreciosCedis = String.IsNullOrEmpty(row.Field<string>(6))
                       //? ""
                       //: row.Field<string>(6),
                       //codigoRamo = String.IsNullOrEmpty(row.Field<string>(7))
                       //? ""
                       //: row.Field<string>(7),
                       //jerarquiaTipoNegocioA = String.IsNullOrEmpty(row.Field<string>(8))
                       //? ""
                       //: row.Field<string>(8),
                       //otrasCategorias = row.Field<Boolean?>(9).GetValueOrDefault(),
                       //groPreciosFronteraOc = String.IsNullOrEmpty(row.Field<string>(10))
                       //? ""
                       //: row.Field<string>(10),
                       //groPreciosFrontera1Oc = String.IsNullOrEmpty(row.Field<string>(11))
                       //? ""
                       //: row.Field<string>(11),
                       //groPreciosInteriorOc = String.IsNullOrEmpty(row.Field<string>(12))
                       //? ""
                       //: row.Field<string>(12),
                       //groPreciosInterior1Oc = String.IsNullOrEmpty(row.Field<string>(13))
                       //? ""
                       //: row.Field<string>(13),
                   }
                   ).ToList();
                   return list;
               }
           }
           catch (Exception ex)
           {

               throw ex;
           }
       }
        public TipoNegocio()
        {
            idTipoNegocio = 0;
            dscTipoNegocio = "";
            //denominacion = "";
            //groPreciosFrontera = "";
            //groPreciosInterior = "";
            //groPreciosDf = "";
            //groPreciosCedis = "";
            //codigoRamo = "";
            //jerarquiaTipoNegocioA = "";
            //otrasCategorias = false;
            //groPreciosFronteraOc = "";
            //groPreciosFrontera1Oc = "";
            //groPreciosInteriorOc = "";
            //groPreciosInterior1Oc = "";
        }
        //public TipoNegocio(int idTipoNegocio,string dscTipoNegocio, string denominacion, string groPreciosFrontera, string groPreciosInterior, string groPreciosDf, string groPreciosCedis, string codigoRamo, string jerarquiaTipoNegocioA, Boolean otrasCategorias, string groPreciosFronteraOc, string groPreciosFrontera1Oc, string groPreciosInteriorOc, string groPreciosInterior1Oc) 
        public TipoNegocio(int idTipoNegocio, string dscTipoNegocio) 
        {
            this.idTipoNegocio = idTipoNegocio;
            this.dscTipoNegocio = dscTipoNegocio;
            //this.denominacion = denominacion;
            //this.groPreciosFrontera = groPreciosFrontera;
            //this.groPreciosInterior = groPreciosInterior;
            //this.groPreciosDf = groPreciosDf;
            //this.groPreciosCedis = groPreciosCedis;
            //this.codigoRamo = codigoRamo;
            //this.jerarquiaTipoNegocioA = jerarquiaTipoNegocioA;
            //this.otrasCategorias = otrasCategorias;
            //this.groPreciosFronteraOc = groPreciosFronteraOc;
            //this.groPreciosFrontera1Oc = groPreciosFrontera1Oc;
            //this.groPreciosInteriorOc = groPreciosInteriorOc;
            //this.groPreciosInterior1Oc = groPreciosInterior1Oc;
        }
   }
}
